package Futbol_Liga;
/**
 * Talde guztien jokalari kopurua gordetzen ditu. 
 * Jokalariak gehitu ahal dira eta jokalari konkretu bat bilatu zerrendaren barnean.
 * @author Txantxangorriak
 *
 */

import java.util.Iterator;

public class JokalariZerrenda {
	private ZerrendaGen<Jokalaria> jokalariak;
	/**
	 * metodo eraikitzailea
	 */
	public  JokalariZerrenda() {
		jokalariak=new ZerrendaGen<Jokalaria>();
	}
	/**
	 * Zerrendako iteratzailea bueltatuko du
	 * @return Iterator<Jokalaria>
	 */
	public Iterator<Jokalaria> getIteratzailea(){

		return jokalariak.getIteratzailea();
	}
	/**
	 * Jokalari bat gehituko du zerrendan
	 * @param pJok
	 */
	public void jokalariaGehitu(Jokalaria pJok){
		
		jokalariak.osagaiaGehitu(pJok);
		
		
	}
	/**
	 * Jokalari bat ezabatuko du zerrendatik
	 * @param pJok
	 */
	
	public void jokalariaEzabattu(Jokalaria pJok){
		
		jokalariak.osagaiaEzabatu(pJok);
			
	}

	/**
	 * Jokalari bat bueltatuko da metodo honekin
	 * @param pIz
	 * @return Jokalaria
	 */
	public Jokalaria getJokalaria(String pIz){
		Iterator<Jokalaria> it= getIteratzailea();
		boolean topatua=false;
		Jokalaria jok=null;
		while(it.hasNext()&& topatua==false){
			jok=it.next();
			if(jok.getIzena()==pIz){
				topatua=true;
			}
		}
		return jok;
		
	}
	/**
	 * Jokalaria badagoen edo ez esango du
	 * @param pIz
	 * @return boolean
	 */
	public boolean jokalariaDago(String pIz){
		Iterator<Jokalaria> it= getIteratzailea();
		boolean emaitza=false;
		Jokalaria jok=null;
		while(it.hasNext()&& emaitza==false){
			jok=it.next();
			if(jok.getIzena()==pIz){
				emaitza=true;
			}
		}
		return emaitza;
	}
	
	
	/**
	 * Jokalaria ezabatu egingo du zerrendatik
	 * @param pJok
	 */
	public void jokalariEzabatu(Jokalaria pJok) {
		jokalariak.osagaiaEzabatu(pJok);
		
	}
	/**
	 * Zerrendaren osagai kopurua bueltatuko du
	 * @return int
	 */
	public int size() {
		
		return jokalariak.getOsagaiKop();
	}
	/**
	 * Jokalariaren dortsala emanda, jokalaria bueltatuko du
	 * @param pJokalari
	 * @return Jokalaria
	 */
	public Jokalaria get(int pJokalari) {
		Iterator<Jokalaria> it= getIteratzailea();
		boolean topatua=false;
		int i=0;
		Jokalaria jok=null;
		while(it.hasNext() && topatua==false){
		
			jok=it.next();
			if(i==pJokalari){
				topatua=true;
			}
			i++;
		}
		return jok;
	}

	
}
